import Button from "naive-ui/es/button/src/Button"

const common = {
  primaryColor: 'rgba(24, 144, 255, 1)',
  textColor: '#A9B5D1',
  whiteColor: '#fff',
  errorColor: '#ff3333',
  primaryColorHover: 'rgba(24, 144, 255, 0.8)',
  primaryColorPressed: 'rgba(24, 144, 255, 1)',
  tableBackground: '#1D2130',
  tableTextColor: '#D8DFF5',
  formColor: '#1D314A',
  backgroundColor: 'rgb(30, 35, 54)'
}

const themeOverrides = {
  common,
  Button: {
    textColor: common.whiteColor,
    border: '1px solid #394C73'
  },
  Input: {
    fontSizeMedium: '16px',
    border: '1px solid #394C73',
    borderDisabled: '1px solid #394C73',
    background: common.formColor,
    color: common.formColor,
    textColor: common.whiteColor,
    suffixTextColor: common.whiteColor,
    colorFocus: common.formColor,
    colorDisabled: common.formColor,
    colorFocusError: common.formColor
  },
  InternalSelection: {
    border: '1px solid #394C73',
    borderDisabled: '1px solid #394C73',
    color: common.formColor,
    colorActive: common.formColor,
    colorDisabled: common.formColor,
    textColor: common.whiteColor,
    colorFocus: common.formColor,
    colorActiveError: common.formColor
  },
  InternalSelectMenu: {
    color: common.formColor,
    optionTextColor: common.whiteColor,
    optionColorPending: common.formColor,
    optionColorActivePending: common.formColor
  },
  DatePicker: {
    border: '1px solid #394C73',
    borderDisabled: '1px solid #394C73',
    panelColor: common.formColor,
    calendarTitleTextColor: common.whiteColor,
    calendarTitleColorHover: common.primaryColor,
    panelTextColor: common.whiteColor,
    itemTextColor: common.whiteColor,
    itemColorHover: 'rgba(99, 179, 233, 0.3)'
  },
  TimePicker: {
    border: '1px solid #394C73',
    borderDisabled: '1px solid #394C73',
    panelColor: common.formColor,
    itemTextColor: common.whiteColor,
    itemColorHover: 'rgba(99, 179, 233, 0.3)'
  },
  TreeSelect: {
    menuColor: common.formColor
  },
  Tree: {
    arrowColor: common.whiteColor,
    nodeColorHover: common.primaryColor,
    nodeTextColor: common.whiteColor,
    nodeColorActive: common.primaryColor
  },
  Form: {
    labelTextColor: common.whiteColor,
    labelFontSizeLeftMedium: '16px'
  },
  Menu: {
    /* 菜单文本 */
    itemTextColor: common.whiteColor,
    itemTextColorHover: common.whiteColor,
    itemTextColorActive: common.whiteColor,
    itemTextColorChildActive: common.whiteColor,
    itemTextColorActiveHover: common.whiteColor,
    itemTextColorChildActiveHover: common.whiteColor,
    /* 图标 */
    itemIconColor: '#fff',
    itemIconColorHover: 'rgb(31, 34, 37)',
    itemIconColorActive: common.primaryColor,
    itemIconColorActiveHover: common.primaryColor,
    itemIconColorChildActive: common.primaryColor,
    itemIconColorCollapsed: 'rgb(31, 34, 37)',
    itemTextColorHorizontal: 'rgb(51, 54, 57)',
    itemTextColorHoverHorizontal: common.primaryColor,
    itemTextColorActiveHorizontal: common.primaryColor,
    itemTextColorChildActiveHorizontal: common.primaryColor,
    itemTextColorActiveHoverHorizontal: common.primaryColor,
    itemIconColorHorizontal: 'rgb(31, 34, 37)',
    itemIconColorHoverHorizontal: common.primaryColor,
    itemIconColorActiveHorizontal: common.primaryColor,
    itemIconColorActiveHoverHorizontal: common.primaryColor,
    itemIconColorChildActiveHorizontal: common.primaryColor,
    /* 箭头 */
    arrowColor: common.whiteColor,
    arrowColorHover: common.whiteColor,
    arrowColorActive: common.whiteColor,
    arrowColorActiveHover: common.whiteColor,
    arrowColorChildActive: common.whiteColor,
    arrowColorChildActiveHover: common.whiteColor,
    /* 菜单 */
    itemColorHover: '#304c8a',
    itemColorActive: '#304c8a',
    itemColorActiveHover: '#304c8a',
    itemColorActiveCollapsed: '#EFF6FF'
  },
  Cascader: {
    menuColor: common.formColor,
    optionColorHover: common.formColor,
    optionTextColor: common.whiteColor
  },
  Radio: {
    textColor: common.whiteColor
  },
  Drawer: {
    color: common.backgroundColor,
    headerBorderBottom: '0',
    textColor: common.textColor,
    titleTextColor: common.textColor,
    closeIconColor: common.textColor,
    bodyPadding: '10px 20px'
  },
  Dialog: {
    color: common.tableBackground,
    textColor: common.whiteColor,
    titleTextColor: common.whiteColor,
    closeIconColor: common.whiteColor
  },
  Tag: {
    border: 'none',
    textColor: common.whiteColor,
    closeIconColor: common.whiteColor
  },
  Popover: {
    textColor: '#000'
  },
  DataTable: {
    borderColor: 'transparent',
    borderColorModal: 'transparent',
    thColor: '#232841',
    thColorModal: common.tableBackground,
    thTextColor: common.tableTextColor,
    tdColor: common.tableBackground,
    tdColorModal: common.tableBackground,
    tdTextColor: common.tableTextColor,
    tdColorHoverModal: common.tableBackground,
    tdColorHover: '#224e9b',
    tdColorStriped: '#2A2F46'
  },
  Pagination: {
    color: 'rgba(209, 209, 209, 1)',
    itemColor: common.formColor,
    itemTextColor: common.whiteColor,
    itemColorDisabled: 'rgba(255, 255, 255, 0.2)',
    itemTextColorActive: common.whiteColor,
    itemcolorActive: '#fff',
    itemBorderActive: 'rgba(99, 179, 233, 1)',
    itemBorderDisabled: 'transparent',
    jumperTextColor: common.whiteColor,
    buttonBorder: common.formColor,
    buttonBorderHover: 'transparent',
    buttonColor: '#1d314a',
    buttonColorHover: 'transparent',
    buttonIconColor: '#fff',
    buttonIconColorHover: common.primaryColor
  },
  Card: {
    color: 'transparent',
    borderColor: 'transparent',
    colorModal: common.tableBackground
  }
}

export default themeOverrides
